From 0311ffe02393aecdfbc1565a56bed0ec3025403a Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sun, 19 Jun 2011 18:53:24 -0400 Subject: [PATCH] Fix some problems with the GailLinkButton implementation --- gtk/a11y/gaillinkbutton.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/gtk/a11y/gaillinkbutton.c b/gtk/a11y/gaillinkbutton.c index 16671f8279..ef26107f38 100644 --- a/gtk/a11y/gaillinkbutton.c +++ b/gtk/a11y/gaillinkbutton.c @@ -43,6 +43,17 @@ static void atk_action_interface_init (AtkActionIface *iface); G_DEFINE_TYPE_WITH_CODE (GailLinkButtonLink, gail_link_button_link, ATK_TYPE_HYPERLINK, G_IMPLEMENT_INTERFACE (ATK_TYPE_ACTION, atk_action_interface_init)) +static GailLinkButtonLink * +gail_link_button_link_new (GailLinkButton *button) +{ + GailLinkButtonLink *link; + + link = g_object_new (gail_link_button_link_get_type (), NULL); + link->button = button; + + return link; +} + static gchar * gail_link_button_link_get_uri (AtkHyperlink *link, gint i) @@ -213,12 +224,12 @@ gail_link_button_get_hyperlink (AtkHyperlinkImpl *impl) if (!button->link) { - button->link = g_object_new (gail_link_button_link_get_type (), NULL); + button->link = gail_link_button_link_new (button); g_signal_connect (gtk_accessible_get_widget (GTK_ACCESSIBLE (button)), "activate-link", G_CALLBACK (activate_link), button->link); } - return button->link; + return g_object_ref (button->link); } static void atk_hypertext_impl_interface_init (AtkHyperlinkImplIface *iface); -- 2.30.2